package com.haixiaoke.saas.cleaner.mapper;


import com.haixiaoke.saas.cleaner.domain.Cleaner;
import com.haixiaoke.saas.user.domain.BizUserBusiness;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 保洁人员信息Mapper接口
 *
 * @author xiaolong
 * @date 2024-05-08
 */
public interface CleanerMapper {
    /**
     * 查询保洁人员信息
     *
     * @param cleanerId 保洁人员信息主键
     * @return 保洁人员信息
     */
    Cleaner selectCleanerByCleanerId(Long cleanerId);

    /**
     * 查询保洁人员信息列表
     *
     * @param cleaner 保洁人员信息
     * @return 保洁人员信息集合
     */
    List<Cleaner> selectCleanerList(Cleaner cleaner);

    /**
     * 新增保洁人员信息
     *
     * @param cleaner 保洁人员信息
     * @return 结果
     */
    int insertCleaner(Cleaner cleaner);

    /**
     * 修改保洁人员信息
     *
     * @param cleaner 保洁人员信息
     * @return 结果
     */
    int updateCleaner(Cleaner cleaner);

    /**
     * 删除保洁人员信息
     *
     * @param cleanerId 保洁人员信息主键
     * @return 结果
     */
    int deleteCleanerByCleanerId(Long cleanerId);

    /**
     * 批量删除保洁人员信息
     *
     * @param cleanerIds 需要删除的数据主键集合
     * @return 结果
     */
    int deleteCleanerByCleanerIds(Long[] cleanerIds);

    /**
     * 获取企业用户信息
     */
    List<BizUserBusiness> getUserInfo(String tenantId);

    Cleaner selectCleanerByCleanerUserId(@Param("cleanerUserId") Long cleanerUserId, @Param("tenantId") String tenantId);

    List<Cleaner> selectCleanerByCleanerIds(Cleaner cleaner);

    List<Cleaner> selectCleanerByCleanerList(Cleaner cleaner);

    int updateCleanerByCleanerIds(Long[] cleanerIds);
}
